home *** CD-ROM | disk | FTP | other *** search
- module DemoModule interface; { interface part }
-
- export DemoModule = (FooType, SetFoo, GetFoo);
-
- type
- FooType = Integer;
-
- procedure SetFoo (f : FooType);
- function GetFoo : FooType;
-
- end.
-
- module DemoModule implementation; { implementation part }
-
- import
- StandardInput;
- StandardOutput;
-
- var
- Foo : FooType;
-
- { Note: the effect is the same as a `forward' directive would have:
- parameter lists and return types are not allowed in the
- declaration of exported routines, according to EP. In GPC, they
- are allowed, but not required. }
- procedure SetFoo;
- begin
- Foo := f
- end;
-
- function GetFoo;
- begin
- GetFoo := Foo
- end;
-
- to begin do
- begin
- foo := 59;
- WriteLn ('Just an example of a module initializer. See comment below')
- end;
-
- to end do
- begin
- Foo := 0;
- WriteLn ('Goodbye')
- end;
-
- end.
-